﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
using System.Device.Location;

namespace RunCoachServer
{
    [ServiceContract]
    public interface IRunCoachService
    {
        [OperationContract]
        Int32 Login(String username, String password);

        [OperationContract]
        void Logout();

        [OperationContract]
        Boolean changePassword(String username, String new_password, String old_password);

        [OperationContract]
        Boolean RegisterUser(String username, String realname, String password);

        [OperationContract]
        Boolean getDataFromMobile(DateTime start_time, DateTime end_time, List<GeoCoordinate> coordinates, Dictionary<String, Int32> int_values);

        [OperationContract]
        Runs[] getAllRunsData(Int32 user_id);

        [OperationContract]
        Boolean deleteRunData(Int32 id, Int32 user_id);

        [OperationContract]
        List<GeoCoordinate> getRunCoordinates(Int32 run_id, Int32 user_id);
    }
}
